安装 Spark 的环境。涉及安装 JDK,Scala,Maven,Python3。搭建 Hadoop,Spark等。
安装 JDK
1 | tar -zxvf jdk-8u91-linux-x64.tar.gz -C ~/app/ |
配置环境变量1
2
3
4
5vim ~/.bash_profile
写入
export JAVA_HOME=/home/hadoop/app/jdk1.8.0_91
export PATH=$JAVA_HOME/bin:$PATH
在任意目录输入 java -version 没问题,那么环境就搭建好了1
2
3
4[hadoop@hadoop000 app]$ java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
安装 Scala
1 | tar -zxvf scala-2.11.8.tgz -C ~/app/ |
1 | export SCALA_HOME=/home/hadoop/app/scala-2.11.8 |
在任意目录输入 scala 没问题,那么环境就搭建好了
搭建 Hadoop
1 | tar -zxvf hadoop-2.6.0-cdh5.7.0.tar.gz -C ~/app/ |
配置环境变量1
2
3
4
5
6
7
8vim ~/.bash_profile
写入
export HADOOP_HOME=/home/hadoop/app/hadoop-2.6.0-cdh5.7.0
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
保存后执行
source ~/.bash_profile
切换目录到1
2cd $HADOOP_HOME
cd etc/hadoop/
1 | vim hadoop-env.sh |
1 | vim core-site.xml |
1 | vim hdfs-site.xml |
1 | cp mapred-site.xml.template mapred-site.xml |
1 | vim yarn-site.xml |
切换到 hadoop 安装环境目录下的 bin 下,进行 hdfs 的格式化1
2cd ~/app/hadoop-2.6.0-cdh5.7.0/bin/
./hadoop namenode -format
如果出现 common.Storage: Storage directory /home/hadoop/app/tmp/dfs/name has been successfully formatted.
则表示格式化成功。切换到 /home/hadoop/app/tmp
目录就可以看到 dfs/name/current目录层级结构了。
启动 hdfs1
2cd ~/app/hadoop-2.6.0-cdh5.7.0/sbin/
./start-dfs.sh
若能完全执行,则表示没问题,能启动。
在命令行中 输入 jps
验证,如果有 SecondaryNameNode DataNode NameNode 就可以 ( 第一次启动的时候没有 NameNode 后来在 hosts 中加入 192.168.11.111 hadoop000 映射就有了 )1
2
3
4
5[hadoop@hadoop000 sbin]$ jps
6240 SecondaryNameNode
6371 Jps
6073 DataNode
5946 NameNode
新建测试 test 目录1
2
3
4hadoop fs -mkdir /test
然后在使用下面命令查看是否有新建的 test 目录
hadoop fs -ls /
传入文件测试1
2
3
4
5
6
7
8 将文件 stop-yarn.cmd 传到 hdaoop hdfs 的根目录中去
hadoop fs -put stop-yarn.cmd /
查看是否有新传入的文件
hadoop fs -ls /
读取上传文件的内容
hadoop fs -text /stop-yarn.cmd
此时hdfs 功能没问题,我们可以在浏览器中输入 http://192.168.11.111:50070 192.168.11.111 是服务器的 ip。可以在 导航中 Utilities 下 Browse the file system 中查看到当前的文件。
接下来启动 yarn1
2cd /home/hadoop/app/hadoop-2.6.0-cdh5.7.0/sbin
./start-yarn.sh
再次执行 jps 如果 ResourceManager 和 NodeManager 都有,那就没问题1
2
3
4
5
6
7[hadoop@hadoop000 sbin]$ jps
7088 ResourceManager
6240 SecondaryNameNode
7379 NodeManager
7524 Jps
6073 DataNode
5946 NameNode
使用浏览器打开 http://192.168.11.111:8088 就可以看到有一个活跃的节点,那就说明整个 Hadoop 环境就搭建完成了。
搭建 Maven
1 | tar -zxvf apache-maven-3.3.9-bin.tar.gz -C ~/app/ |
修改 maven 的配置文件,新建 ~/maven_repository 目录1
2
3
4
5
6mkdir ~/maven_repository
cd /home/hadoop/app/apache-maven-3.3.9/conf
vim settings.xml
将其中的 <localRepository>/path/to/local/repo</localRepository> 改为
<localRepository>~/maven_repository</localRepository>
在命令行中输入 mvn
若有东西输出则表示没问题
安装 Python3
1 | tar -zxvf Python-3.6.8.tgz # 直接解压到本地 |
安装 Spark
1 | tar -zxvf spark-2.3.0.tgz |
编译的时候失败了三次,因为网络的问题。最后将 maven 的中心仓库地址改为阿里云才成功。1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25<mirrors>
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<!-- 中央仓库1 -->
<mirror>
<id>repo1</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
<!-- 中央仓库2 -->
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
</mirrors>
编译完成后会有一个 spark-2.3.0-bin-2.6.0-cdh5.7.0.tgz 的文件。spark-2.3.0 是版本,2.6.0-cdh5.7.0 是我们设置的名称。1
2
3
4
5
6
7
8 解压刚才编译的文件
tar -zxvf spark-2.3.0-bin-2.6.0-cdh5.7.0.tgz -C ~/app/
测试
cd /home/hadoop/app/spark-2.3.0-bin-2.6.0-cdh5.7.0/bin
如果能启动成功那就没问题了。同时我们也可以在浏览器上进行查看
http://192.168.11.111:4040/jobs/